package Level02.Four;

/**
 * 第一个线程：遍历 1--1000 所有的数字，在遍历过程中，如果发现这个数字能同时被
 * 2,3,5,7 整除，立即 wait()退出等待，让第二个线程进入。
 */
public class Traversal implements Runnable {
    private int sum;

    public int getSum() {
        return sum;
    }

    public void setSum(int sum) {
        this.sum = sum;
    }

    @Override
    public void run() {
        synchronized (Object.class) {
            for (int i = 1; i <= 1000; i++) {
                if (i == 1000) {
                    this.sum = i;
                }if (i % 2 == 0 && i % 3 == 0 && i % 5 == 0 && i % 7 == 0) {
                    System.out.println("符合的数字为" + i);
                    Object.class.notify();
                    try {
                        Object.class.wait();
                    } catch (InterruptedException e) {
                        e.printStackTrace();
                    }
                }
            }
        }
    }
}
